// 16 QUBIT DEEP ( Ideal - can then train proper ML if this is efficient)

// Generated from Cirq v0.8.0

OPENQASM 2.0;
include "qelib1.inc";


// Qubits: [(0, 0), (0, 1), (0, 2), (0, 3), (0, 4), (0, 5), (0, 6), (0, 7), (0, 8), (0, 9), (0, 10), (0, 11), (0, 12), (0, 13), (0, 14), (0, 15)]
qreg q[16];
creg ans[16];


rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];
rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];

// Gate: ZZ**1.1
rz(pi*1.1) q[0];
rz(pi*1.1) q[1];
u3(pi*0.5,0,pi*0.25) q[0];
u3(pi*0.5,pi*1.0,pi*0.75) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.4) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*0.5,pi*0.65,pi*1.0) q[0];
u3(pi*0.5,pi*0.15,0) q[1];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[0];
u3(0,0,pi*0.5) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.4) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*1.0,0,pi*0.5) q[0];
u3(pi*1.0,0,pi*1.5) q[1];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[0];
u3(pi*0.5,pi*0.5,pi*1.5) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.4) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*0.5,pi*0.5,pi*0.5) q[0];
u3(pi*0.5,pi*0.5,pi*1.5) q[1];

rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];
rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];
rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];
rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];

// Gate: ZZ**1.1
rz(pi*1.1) q[2];
rz(pi*1.1) q[3];
u3(pi*0.5,0,pi*0.25) q[2];
u3(pi*0.5,pi*1.0,pi*0.75) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.4) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*0.5,pi*0.65,pi*1.0) q[2];
u3(pi*0.5,pi*0.15,0) q[3];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[2];
u3(0,0,pi*0.5) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.4) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*1.0,0,pi*0.5) q[2];
u3(pi*1.0,0,pi*1.5) q[3];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[2];
u3(pi*0.5,pi*0.5,pi*1.5) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.4) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*0.5,pi*0.5,pi*0.5) q[2];
u3(pi*0.5,pi*0.5,pi*1.5) q[3];

rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];
rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];
rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];
rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];

// Gate: ZZ**1.1
rz(pi*1.1) q[4];
rz(pi*1.1) q[5];
u3(pi*0.5,0,pi*0.25) q[4];
u3(pi*0.5,pi*1.0,pi*0.75) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.4) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*0.5,pi*0.65,pi*1.0) q[4];
u3(pi*0.5,pi*0.15,0) q[5];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[4];
u3(0,0,pi*0.5) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.4) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*1.0,0,pi*0.5) q[4];
u3(pi*1.0,0,pi*1.5) q[5];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[4];
u3(pi*0.5,pi*0.5,pi*1.5) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.4) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*0.5,pi*0.5,pi*0.5) q[4];
u3(pi*0.5,pi*0.5,pi*1.5) q[5];

rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];
rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];
rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];
rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];

// Gate: ZZ**1.1
rz(pi*1.1) q[6];
rz(pi*1.1) q[7];
u3(pi*0.5,0,pi*0.25) q[6];
u3(pi*0.5,pi*1.0,pi*0.75) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.4) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*0.5,pi*0.65,pi*1.0) q[6];
u3(pi*0.5,pi*0.15,0) q[7];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[6];
u3(0,0,pi*0.5) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.4) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*1.0,0,pi*0.5) q[6];
u3(pi*1.0,0,pi*1.5) q[7];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[6];
u3(pi*0.5,pi*0.5,pi*1.5) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.4) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*0.5,pi*0.5,pi*0.5) q[6];
u3(pi*0.5,pi*0.5,pi*1.5) q[7];

rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];
rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];
rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];
rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];

// Gate: ZZ**1.1
rz(pi*1.1) q[8];
rz(pi*1.1) q[9];
u3(pi*0.5,0,pi*0.25) q[8];
u3(pi*0.5,pi*1.0,pi*0.75) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.4) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*0.5,pi*0.65,pi*1.0) q[8];
u3(pi*0.5,pi*0.15,0) q[9];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[8];
u3(0,0,pi*0.5) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.4) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*1.0,0,pi*0.5) q[8];
u3(pi*1.0,0,pi*1.5) q[9];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[8];
u3(pi*0.5,pi*0.5,pi*1.5) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.4) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*0.5,pi*0.5,pi*0.5) q[8];
u3(pi*0.5,pi*0.5,pi*1.5) q[9];

rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];
rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];
rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];
rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];

// Gate: ZZ**1.1
rz(pi*1.1) q[10];
rz(pi*1.1) q[11];
u3(pi*0.5,0,pi*0.25) q[10];
u3(pi*0.5,pi*1.0,pi*0.75) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.4) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*0.5,pi*0.65,pi*1.0) q[10];
u3(pi*0.5,pi*0.15,0) q[11];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[10];
u3(0,0,pi*0.5) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.4) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*1.0,0,pi*0.5) q[10];
u3(pi*1.0,0,pi*1.5) q[11];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[10];
u3(pi*0.5,pi*0.5,pi*1.5) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.4) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*0.5,pi*0.5,pi*0.5) q[10];
u3(pi*0.5,pi*0.5,pi*1.5) q[11];

rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];
rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];
rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];
rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];

// Gate: ZZ**1.1
rz(pi*1.1) q[12];
rz(pi*1.1) q[13];
u3(pi*0.5,0,pi*0.25) q[12];
u3(pi*0.5,pi*1.0,pi*0.75) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.4) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*0.5,pi*0.65,pi*1.0) q[12];
u3(pi*0.5,pi*0.15,0) q[13];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[12];
u3(0,0,pi*0.5) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.4) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*1.0,0,pi*0.5) q[12];
u3(pi*1.0,0,pi*1.5) q[13];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[12];
u3(pi*0.5,pi*0.5,pi*1.5) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.4) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*0.5,pi*0.5,pi*0.5) q[12];
u3(pi*0.5,pi*0.5,pi*1.5) q[13];

rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];
rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];
rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];
rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];

// Gate: ZZ**1.1
rz(pi*1.1) q[14];
rz(pi*1.1) q[15];
u3(pi*0.5,0,pi*0.25) q[14];
u3(pi*0.5,pi*1.0,pi*0.75) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.4) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*0.5,pi*0.65,pi*1.0) q[14];
u3(pi*0.5,pi*0.15,0) q[15];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[14];
u3(0,0,pi*0.5) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.4) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*1.0,0,pi*0.5) q[14];
u3(pi*1.0,0,pi*1.5) q[15];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[14];
u3(pi*0.5,pi*0.5,pi*1.5) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.4) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*0.5,pi*0.5,pi*0.5) q[14];
u3(pi*0.5,pi*0.5,pi*1.5) q[15];

rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];
rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];
rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];
rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];

// Gate: ZZ**1.1
rz(pi*1.1) q[1];
rz(pi*1.1) q[2];
u3(pi*0.5,0,pi*0.25) q[1];
u3(pi*0.5,pi*1.0,pi*0.75) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.4) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*0.5,pi*0.65,pi*1.0) q[1];
u3(pi*0.5,pi*0.15,0) q[2];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[1];
u3(0,0,pi*0.5) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.4) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*1.0,0,pi*0.5) q[1];
u3(pi*1.0,0,pi*1.5) q[2];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[1];
u3(pi*0.5,pi*0.5,pi*1.5) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.4) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*0.5,pi*0.5,pi*0.5) q[1];
u3(pi*0.5,pi*0.5,pi*1.5) q[2];

rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];
rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];
rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];
rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];

// Gate: ZZ**1.1
rz(pi*1.1) q[3];
rz(pi*1.1) q[4];
u3(pi*0.5,0,pi*0.25) q[3];
u3(pi*0.5,pi*1.0,pi*0.75) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.4) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*0.5,pi*0.65,pi*1.0) q[3];
u3(pi*0.5,pi*0.15,0) q[4];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[3];
u3(0,0,pi*0.5) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.4) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*1.0,0,pi*0.5) q[3];
u3(pi*1.0,0,pi*1.5) q[4];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[3];
u3(pi*0.5,pi*0.5,pi*1.5) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.4) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*0.5,pi*0.5,pi*0.5) q[3];
u3(pi*0.5,pi*0.5,pi*1.5) q[4];

rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];
rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];
rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];
rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];

// Gate: ZZ**1.1
rz(pi*1.1) q[5];
rz(pi*1.1) q[6];
u3(pi*0.5,0,pi*0.25) q[5];
u3(pi*0.5,pi*1.0,pi*0.75) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.4) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*0.5,pi*0.65,pi*1.0) q[5];
u3(pi*0.5,pi*0.15,0) q[6];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[5];
u3(0,0,pi*0.5) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.4) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*1.0,0,pi*0.5) q[5];
u3(pi*1.0,0,pi*1.5) q[6];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[5];
u3(pi*0.5,pi*0.5,pi*1.5) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.4) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*0.5,pi*0.5,pi*0.5) q[5];
u3(pi*0.5,pi*0.5,pi*1.5) q[6];

rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];
rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];
rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];
rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];

// Gate: ZZ**1.1
rz(pi*1.1) q[7];
rz(pi*1.1) q[8];
u3(pi*0.5,0,pi*0.25) q[7];
u3(pi*0.5,pi*1.0,pi*0.75) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.4) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*0.5,pi*0.65,pi*1.0) q[7];
u3(pi*0.5,pi*0.15,0) q[8];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[7];
u3(0,0,pi*0.5) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.4) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*1.0,0,pi*0.5) q[7];
u3(pi*1.0,0,pi*1.5) q[8];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[7];
u3(pi*0.5,pi*0.5,pi*1.5) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.4) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*0.5,pi*0.5,pi*0.5) q[7];
u3(pi*0.5,pi*0.5,pi*1.5) q[8];

rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];
rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];
rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];
rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];

// Gate: ZZ**1.1
rz(pi*1.1) q[9];
rz(pi*1.1) q[10];
u3(pi*0.5,0,pi*0.25) q[9];
u3(pi*0.5,pi*1.0,pi*0.75) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.4) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*0.5,pi*0.65,pi*1.0) q[9];
u3(pi*0.5,pi*0.15,0) q[10];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[9];
u3(0,0,pi*0.5) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.4) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*1.0,0,pi*0.5) q[9];
u3(pi*1.0,0,pi*1.5) q[10];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[9];
u3(pi*0.5,pi*0.5,pi*1.5) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.4) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*0.5,pi*0.5,pi*0.5) q[9];
u3(pi*0.5,pi*0.5,pi*1.5) q[10];

rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];
rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];
rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];
rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];

// Gate: ZZ**1.1
rz(pi*1.1) q[11];
rz(pi*1.1) q[12];
u3(pi*0.5,0,pi*0.25) q[11];
u3(pi*0.5,pi*1.0,pi*0.75) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.4) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*0.5,pi*0.65,pi*1.0) q[11];
u3(pi*0.5,pi*0.15,0) q[12];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[11];
u3(0,0,pi*0.5) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.4) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*1.0,0,pi*0.5) q[11];
u3(pi*1.0,0,pi*1.5) q[12];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[11];
u3(pi*0.5,pi*0.5,pi*1.5) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.4) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*0.5,pi*0.5,pi*0.5) q[11];
u3(pi*0.5,pi*0.5,pi*1.5) q[12];

rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];
rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];
rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];
rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];

// Gate: ZZ**1.1
rz(pi*1.1) q[13];
rz(pi*1.1) q[14];
u3(pi*0.5,0,pi*0.25) q[13];
u3(pi*0.5,pi*1.0,pi*0.75) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.4) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*0.5,pi*0.65,pi*1.0) q[13];
u3(pi*0.5,pi*0.15,0) q[14];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[13];
u3(0,0,pi*0.5) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.4) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*1.0,0,pi*0.5) q[13];
u3(pi*1.0,0,pi*1.5) q[14];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[13];
u3(pi*0.5,pi*0.5,pi*1.5) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.4) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*0.5,pi*0.5,pi*0.5) q[13];
u3(pi*0.5,pi*0.5,pi*1.5) q[14];

rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];
rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];
rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];
rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];

// Gate: ZZ**1.1
rz(pi*1.1) q[15];
rz(pi*1.1) q[0];
u3(pi*0.5,0,pi*0.25) q[15];
u3(pi*0.5,pi*1.0,pi*0.75) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.4) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*0.5,pi*0.65,pi*1.0) q[15];
u3(pi*0.5,pi*0.15,0) q[0];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[15];
u3(0,0,pi*0.5) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.4) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*1.0,0,pi*0.5) q[15];
u3(pi*1.0,0,pi*1.5) q[0];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[15];
u3(pi*0.5,pi*0.5,pi*1.5) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.4) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*0.5,pi*0.5,pi*0.5) q[15];
u3(pi*0.5,pi*0.5,pi*1.5) q[0];

rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];
rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];

// Gate: CNOT**1.1
ry(pi*-0.5) q[1];
u3(pi*0.5,0,pi*0.25) q[0];
u3(pi*0.5,pi*1.0,pi*0.75) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.05) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*0.5,pi*0.3,pi*1.0) q[0];
u3(pi*0.5,pi*1.8,0) q[1];
ry(pi*0.5) q[1];

// Gate: CNOT**1.1
ry(pi*-0.5) q[3];
u3(pi*0.5,0,pi*0.25) q[2];
u3(pi*0.5,pi*1.0,pi*0.75) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.05) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*0.5,pi*0.3,pi*1.0) q[2];
u3(pi*0.5,pi*1.8,0) q[3];
ry(pi*0.5) q[3];

// Gate: CNOT**1.1
ry(pi*-0.5) q[5];
u3(pi*0.5,0,pi*0.25) q[4];
u3(pi*0.5,pi*1.0,pi*0.75) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.05) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*0.5,pi*0.3,pi*1.0) q[4];
u3(pi*0.5,pi*1.8,0) q[5];
ry(pi*0.5) q[5];

// Gate: CNOT**1.1
ry(pi*-0.5) q[7];
u3(pi*0.5,0,pi*0.25) q[6];
u3(pi*0.5,pi*1.0,pi*0.75) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.05) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*0.5,pi*0.3,pi*1.0) q[6];
u3(pi*0.5,pi*1.8,0) q[7];
ry(pi*0.5) q[7];

// Gate: CNOT**1.1
ry(pi*-0.5) q[9];
u3(pi*0.5,0,pi*0.25) q[8];
u3(pi*0.5,pi*1.0,pi*0.75) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.05) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*0.5,pi*0.3,pi*1.0) q[8];
u3(pi*0.5,pi*1.8,0) q[9];
ry(pi*0.5) q[9];

// Gate: CNOT**1.1
ry(pi*-0.5) q[11];
u3(pi*0.5,0,pi*0.25) q[10];
u3(pi*0.5,pi*1.0,pi*0.75) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.05) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*0.5,pi*0.3,pi*1.0) q[10];
u3(pi*0.5,pi*1.8,0) q[11];
ry(pi*0.5) q[11];

// Gate: CNOT**1.1
ry(pi*-0.5) q[13];
u3(pi*0.5,0,pi*0.25) q[12];
u3(pi*0.5,pi*1.0,pi*0.75) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.05) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*0.5,pi*0.3,pi*1.0) q[12];
u3(pi*0.5,pi*1.8,0) q[13];
ry(pi*0.5) q[13];

// Gate: CNOT**1.1
ry(pi*-0.5) q[15];
u3(pi*0.5,0,pi*0.25) q[14];
u3(pi*0.5,pi*1.0,pi*0.75) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.05) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*0.5,pi*0.3,pi*1.0) q[14];
u3(pi*0.5,pi*1.8,0) q[15];
ry(pi*0.5) q[15];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[0];
u3(pi*0.5,pi*1.0,pi*0.75) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.05) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*0.5,pi*0.3,pi*1.0) q[0];
u3(pi*0.5,pi*1.8,0) q[1];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[2];
u3(pi*0.5,pi*1.0,pi*0.75) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.05) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*0.5,pi*0.3,pi*1.0) q[2];
u3(pi*0.5,pi*1.8,0) q[3];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[4];
u3(pi*0.5,pi*1.0,pi*0.75) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.05) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*0.5,pi*0.3,pi*1.0) q[4];
u3(pi*0.5,pi*1.8,0) q[5];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[6];
u3(pi*0.5,pi*1.0,pi*0.75) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.05) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*0.5,pi*0.3,pi*1.0) q[6];
u3(pi*0.5,pi*1.8,0) q[7];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[8];
u3(pi*0.5,pi*1.0,pi*0.75) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.05) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*0.5,pi*0.3,pi*1.0) q[8];
u3(pi*0.5,pi*1.8,0) q[9];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[10];
u3(pi*0.5,pi*1.0,pi*0.75) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.05) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*0.5,pi*0.3,pi*1.0) q[10];
u3(pi*0.5,pi*1.8,0) q[11];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[12];
u3(pi*0.5,pi*1.0,pi*0.75) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.05) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*0.5,pi*0.3,pi*1.0) q[12];
u3(pi*0.5,pi*1.8,0) q[13];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[14];
u3(pi*0.5,pi*1.0,pi*0.75) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.05) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*0.5,pi*0.3,pi*1.0) q[14];
u3(pi*0.5,pi*1.8,0) q[15];

// Gate: CNOT**1.1
ry(pi*-0.5) q[2];
u3(pi*0.5,0,pi*0.25) q[1];
u3(pi*0.5,pi*1.0,pi*0.75) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.05) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*0.5,pi*0.3,pi*1.0) q[1];
u3(pi*0.5,pi*1.8,0) q[2];
ry(pi*0.5) q[2];

// Gate: CNOT**1.1
ry(pi*-0.5) q[4];
u3(pi*0.5,0,pi*0.25) q[3];
u3(pi*0.5,pi*1.0,pi*0.75) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.05) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*0.5,pi*0.3,pi*1.0) q[3];
u3(pi*0.5,pi*1.8,0) q[4];
ry(pi*0.5) q[4];

// Gate: CNOT**1.1
ry(pi*-0.5) q[6];
u3(pi*0.5,0,pi*0.25) q[5];
u3(pi*0.5,pi*1.0,pi*0.75) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.05) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*0.5,pi*0.3,pi*1.0) q[5];
u3(pi*0.5,pi*1.8,0) q[6];
ry(pi*0.5) q[6];

// Gate: CNOT**1.1
ry(pi*-0.5) q[8];
u3(pi*0.5,0,pi*0.25) q[7];
u3(pi*0.5,pi*1.0,pi*0.75) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.05) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*0.5,pi*0.3,pi*1.0) q[7];
u3(pi*0.5,pi*1.8,0) q[8];
ry(pi*0.5) q[8];

// Gate: CNOT**1.1
ry(pi*-0.5) q[10];
u3(pi*0.5,0,pi*0.25) q[9];
u3(pi*0.5,pi*1.0,pi*0.75) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.05) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*0.5,pi*0.3,pi*1.0) q[9];
u3(pi*0.5,pi*1.8,0) q[10];
ry(pi*0.5) q[10];

// Gate: CNOT**1.1
ry(pi*-0.5) q[12];
u3(pi*0.5,0,pi*0.25) q[11];
u3(pi*0.5,pi*1.0,pi*0.75) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.05) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*0.5,pi*0.3,pi*1.0) q[11];
u3(pi*0.5,pi*1.8,0) q[12];
ry(pi*0.5) q[12];

// Gate: CNOT**1.1
ry(pi*-0.5) q[14];
u3(pi*0.5,0,pi*0.25) q[13];
u3(pi*0.5,pi*1.0,pi*0.75) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.05) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*0.5,pi*0.3,pi*1.0) q[13];
u3(pi*0.5,pi*1.8,0) q[14];
ry(pi*0.5) q[14];

// Gate: CNOT**1.1
ry(pi*-0.5) q[0];
u3(pi*0.5,0,pi*0.25) q[15];
u3(pi*0.5,pi*1.0,pi*0.75) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.05) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*0.5,pi*0.3,pi*1.0) q[15];
u3(pi*0.5,pi*1.8,0) q[0];
ry(pi*0.5) q[0];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[1];
u3(pi*0.5,pi*1.0,pi*0.75) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.05) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*0.5,pi*0.3,pi*1.0) q[1];
u3(pi*0.5,pi*1.8,0) q[2];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[3];
u3(pi*0.5,pi*1.0,pi*0.75) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.05) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*0.5,pi*0.3,pi*1.0) q[3];
u3(pi*0.5,pi*1.8,0) q[4];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[5];
u3(pi*0.5,pi*1.0,pi*0.75) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.05) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*0.5,pi*0.3,pi*1.0) q[5];
u3(pi*0.5,pi*1.8,0) q[6];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[7];
u3(pi*0.5,pi*1.0,pi*0.75) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.05) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*0.5,pi*0.3,pi*1.0) q[7];
u3(pi*0.5,pi*1.8,0) q[8];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[9];
u3(pi*0.5,pi*1.0,pi*0.75) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.05) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*0.5,pi*0.3,pi*1.0) q[9];
u3(pi*0.5,pi*1.8,0) q[10];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[11];
u3(pi*0.5,pi*1.0,pi*0.75) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.05) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*0.5,pi*0.3,pi*1.0) q[11];
u3(pi*0.5,pi*1.8,0) q[12];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[13];
u3(pi*0.5,pi*1.0,pi*0.75) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.05) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*0.5,pi*0.3,pi*1.0) q[13];
u3(pi*0.5,pi*1.8,0) q[14];

// Gate: CZ**1.1
u3(pi*0.5,0,pi*0.25) q[15];
u3(pi*0.5,pi*1.0,pi*0.75) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.05) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*0.5,pi*0.3,pi*1.0) q[15];
u3(pi*0.5,pi*1.8,0) q[0];

rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];
rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];

// Gate: ZZ**1.1
rz(pi*1.1) q[0];
rz(pi*1.1) q[1];
u3(pi*0.5,0,pi*0.25) q[0];
u3(pi*0.5,pi*1.0,pi*0.75) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.4) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*0.5,pi*0.65,pi*1.0) q[0];
u3(pi*0.5,pi*0.15,0) q[1];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[0];
u3(0,0,pi*0.5) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.4) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*1.0,0,pi*0.5) q[0];
u3(pi*1.0,0,pi*1.5) q[1];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[0];
u3(pi*0.5,pi*0.5,pi*1.5) q[1];
rx(pi*0.5) q[0];
cx q[0],q[1];
rx(pi*0.4) q[0];
ry(pi*0.5) q[1];
cx q[1],q[0];
rx(pi*-0.5) q[1];
rz(pi*0.5) q[1];
cx q[0],q[1];
u3(pi*0.5,pi*0.5,pi*0.5) q[0];
u3(pi*0.5,pi*0.5,pi*1.5) q[1];

rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];
rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];
rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];
rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];

// Gate: ZZ**1.1
rz(pi*1.1) q[2];
rz(pi*1.1) q[3];
u3(pi*0.5,0,pi*0.25) q[2];
u3(pi*0.5,pi*1.0,pi*0.75) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.4) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*0.5,pi*0.65,pi*1.0) q[2];
u3(pi*0.5,pi*0.15,0) q[3];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[2];
u3(0,0,pi*0.5) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.4) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*1.0,0,pi*0.5) q[2];
u3(pi*1.0,0,pi*1.5) q[3];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[2];
u3(pi*0.5,pi*0.5,pi*1.5) q[3];
rx(pi*0.5) q[2];
cx q[2],q[3];
rx(pi*0.4) q[2];
ry(pi*0.5) q[3];
cx q[3],q[2];
rx(pi*-0.5) q[3];
rz(pi*0.5) q[3];
cx q[2],q[3];
u3(pi*0.5,pi*0.5,pi*0.5) q[2];
u3(pi*0.5,pi*0.5,pi*1.5) q[3];

rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];
rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];
rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];
rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];

// Gate: ZZ**1.1
rz(pi*1.1) q[4];
rz(pi*1.1) q[5];
u3(pi*0.5,0,pi*0.25) q[4];
u3(pi*0.5,pi*1.0,pi*0.75) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.4) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*0.5,pi*0.65,pi*1.0) q[4];
u3(pi*0.5,pi*0.15,0) q[5];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[4];
u3(0,0,pi*0.5) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.4) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*1.0,0,pi*0.5) q[4];
u3(pi*1.0,0,pi*1.5) q[5];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[4];
u3(pi*0.5,pi*0.5,pi*1.5) q[5];
rx(pi*0.5) q[4];
cx q[4],q[5];
rx(pi*0.4) q[4];
ry(pi*0.5) q[5];
cx q[5],q[4];
rx(pi*-0.5) q[5];
rz(pi*0.5) q[5];
cx q[4],q[5];
u3(pi*0.5,pi*0.5,pi*0.5) q[4];
u3(pi*0.5,pi*0.5,pi*1.5) q[5];

rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];
rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];
rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];
rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];

// Gate: ZZ**1.1
rz(pi*1.1) q[6];
rz(pi*1.1) q[7];
u3(pi*0.5,0,pi*0.25) q[6];
u3(pi*0.5,pi*1.0,pi*0.75) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.4) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*0.5,pi*0.65,pi*1.0) q[6];
u3(pi*0.5,pi*0.15,0) q[7];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[6];
u3(0,0,pi*0.5) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.4) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*1.0,0,pi*0.5) q[6];
u3(pi*1.0,0,pi*1.5) q[7];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[6];
u3(pi*0.5,pi*0.5,pi*1.5) q[7];
rx(pi*0.5) q[6];
cx q[6],q[7];
rx(pi*0.4) q[6];
ry(pi*0.5) q[7];
cx q[7],q[6];
rx(pi*-0.5) q[7];
rz(pi*0.5) q[7];
cx q[6],q[7];
u3(pi*0.5,pi*0.5,pi*0.5) q[6];
u3(pi*0.5,pi*0.5,pi*1.5) q[7];

rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];
rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];
rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];
rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];

// Gate: ZZ**1.1
rz(pi*1.1) q[8];
rz(pi*1.1) q[9];
u3(pi*0.5,0,pi*0.25) q[8];
u3(pi*0.5,pi*1.0,pi*0.75) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.4) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*0.5,pi*0.65,pi*1.0) q[8];
u3(pi*0.5,pi*0.15,0) q[9];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[8];
u3(0,0,pi*0.5) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.4) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*1.0,0,pi*0.5) q[8];
u3(pi*1.0,0,pi*1.5) q[9];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[8];
u3(pi*0.5,pi*0.5,pi*1.5) q[9];
rx(pi*0.5) q[8];
cx q[8],q[9];
rx(pi*0.4) q[8];
ry(pi*0.5) q[9];
cx q[9],q[8];
rx(pi*-0.5) q[9];
rz(pi*0.5) q[9];
cx q[8],q[9];
u3(pi*0.5,pi*0.5,pi*0.5) q[8];
u3(pi*0.5,pi*0.5,pi*1.5) q[9];

rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];
rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];
rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];
rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];

// Gate: ZZ**1.1
rz(pi*1.1) q[10];
rz(pi*1.1) q[11];
u3(pi*0.5,0,pi*0.25) q[10];
u3(pi*0.5,pi*1.0,pi*0.75) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.4) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*0.5,pi*0.65,pi*1.0) q[10];
u3(pi*0.5,pi*0.15,0) q[11];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[10];
u3(0,0,pi*0.5) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.4) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*1.0,0,pi*0.5) q[10];
u3(pi*1.0,0,pi*1.5) q[11];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[10];
u3(pi*0.5,pi*0.5,pi*1.5) q[11];
rx(pi*0.5) q[10];
cx q[10],q[11];
rx(pi*0.4) q[10];
ry(pi*0.5) q[11];
cx q[11],q[10];
rx(pi*-0.5) q[11];
rz(pi*0.5) q[11];
cx q[10],q[11];
u3(pi*0.5,pi*0.5,pi*0.5) q[10];
u3(pi*0.5,pi*0.5,pi*1.5) q[11];

rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];
rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];
rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];
rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];

// Gate: ZZ**1.1
rz(pi*1.1) q[12];
rz(pi*1.1) q[13];
u3(pi*0.5,0,pi*0.25) q[12];
u3(pi*0.5,pi*1.0,pi*0.75) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.4) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*0.5,pi*0.65,pi*1.0) q[12];
u3(pi*0.5,pi*0.15,0) q[13];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[12];
u3(0,0,pi*0.5) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.4) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*1.0,0,pi*0.5) q[12];
u3(pi*1.0,0,pi*1.5) q[13];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[12];
u3(pi*0.5,pi*0.5,pi*1.5) q[13];
rx(pi*0.5) q[12];
cx q[12],q[13];
rx(pi*0.4) q[12];
ry(pi*0.5) q[13];
cx q[13],q[12];
rx(pi*-0.5) q[13];
rz(pi*0.5) q[13];
cx q[12],q[13];
u3(pi*0.5,pi*0.5,pi*0.5) q[12];
u3(pi*0.5,pi*0.5,pi*1.5) q[13];

rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];
rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];
rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];
rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];

// Gate: ZZ**1.1
rz(pi*1.1) q[14];
rz(pi*1.1) q[15];
u3(pi*0.5,0,pi*0.25) q[14];
u3(pi*0.5,pi*1.0,pi*0.75) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.4) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*0.5,pi*0.65,pi*1.0) q[14];
u3(pi*0.5,pi*0.15,0) q[15];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[14];
u3(0,0,pi*0.5) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.4) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*1.0,0,pi*0.5) q[14];
u3(pi*1.0,0,pi*1.5) q[15];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[14];
u3(pi*0.5,pi*0.5,pi*1.5) q[15];
rx(pi*0.5) q[14];
cx q[14],q[15];
rx(pi*0.4) q[14];
ry(pi*0.5) q[15];
cx q[15],q[14];
rx(pi*-0.5) q[15];
rz(pi*0.5) q[15];
cx q[14],q[15];
u3(pi*0.5,pi*0.5,pi*0.5) q[14];
u3(pi*0.5,pi*0.5,pi*1.5) q[15];

rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];
rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];
rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];
rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];

// Gate: ZZ**1.1
rz(pi*1.1) q[1];
rz(pi*1.1) q[2];
u3(pi*0.5,0,pi*0.25) q[1];
u3(pi*0.5,pi*1.0,pi*0.75) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.4) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*0.5,pi*0.65,pi*1.0) q[1];
u3(pi*0.5,pi*0.15,0) q[2];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[1];
u3(0,0,pi*0.5) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.4) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*1.0,0,pi*0.5) q[1];
u3(pi*1.0,0,pi*1.5) q[2];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[1];
u3(pi*0.5,pi*0.5,pi*1.5) q[2];
rx(pi*0.5) q[1];
cx q[1],q[2];
rx(pi*0.4) q[1];
ry(pi*0.5) q[2];
cx q[2],q[1];
rx(pi*-0.5) q[2];
rz(pi*0.5) q[2];
cx q[1],q[2];
u3(pi*0.5,pi*0.5,pi*0.5) q[1];
u3(pi*0.5,pi*0.5,pi*1.5) q[2];

rx(pi*0.3501408748) q[1];
ry(pi*0.3501408748) q[1];
rz(pi*0.3501408748) q[1];
rx(pi*0.3501408748) q[2];
ry(pi*0.3501408748) q[2];
rz(pi*0.3501408748) q[2];
rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];
rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];

// Gate: ZZ**1.1
rz(pi*1.1) q[3];
rz(pi*1.1) q[4];
u3(pi*0.5,0,pi*0.25) q[3];
u3(pi*0.5,pi*1.0,pi*0.75) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.4) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*0.5,pi*0.65,pi*1.0) q[3];
u3(pi*0.5,pi*0.15,0) q[4];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[3];
u3(0,0,pi*0.5) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.4) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*1.0,0,pi*0.5) q[3];
u3(pi*1.0,0,pi*1.5) q[4];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[3];
u3(pi*0.5,pi*0.5,pi*1.5) q[4];
rx(pi*0.5) q[3];
cx q[3],q[4];
rx(pi*0.4) q[3];
ry(pi*0.5) q[4];
cx q[4],q[3];
rx(pi*-0.5) q[4];
rz(pi*0.5) q[4];
cx q[3],q[4];
u3(pi*0.5,pi*0.5,pi*0.5) q[3];
u3(pi*0.5,pi*0.5,pi*1.5) q[4];

rx(pi*0.3501408748) q[3];
ry(pi*0.3501408748) q[3];
rz(pi*0.3501408748) q[3];
rx(pi*0.3501408748) q[4];
ry(pi*0.3501408748) q[4];
rz(pi*0.3501408748) q[4];
rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];
rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];

// Gate: ZZ**1.1
rz(pi*1.1) q[5];
rz(pi*1.1) q[6];
u3(pi*0.5,0,pi*0.25) q[5];
u3(pi*0.5,pi*1.0,pi*0.75) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.4) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*0.5,pi*0.65,pi*1.0) q[5];
u3(pi*0.5,pi*0.15,0) q[6];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[5];
u3(0,0,pi*0.5) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.4) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*1.0,0,pi*0.5) q[5];
u3(pi*1.0,0,pi*1.5) q[6];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[5];
u3(pi*0.5,pi*0.5,pi*1.5) q[6];
rx(pi*0.5) q[5];
cx q[5],q[6];
rx(pi*0.4) q[5];
ry(pi*0.5) q[6];
cx q[6],q[5];
rx(pi*-0.5) q[6];
rz(pi*0.5) q[6];
cx q[5],q[6];
u3(pi*0.5,pi*0.5,pi*0.5) q[5];
u3(pi*0.5,pi*0.5,pi*1.5) q[6];

rx(pi*0.3501408748) q[5];
ry(pi*0.3501408748) q[5];
rz(pi*0.3501408748) q[5];
rx(pi*0.3501408748) q[6];
ry(pi*0.3501408748) q[6];
rz(pi*0.3501408748) q[6];
rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];
rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];

// Gate: ZZ**1.1
rz(pi*1.1) q[7];
rz(pi*1.1) q[8];
u3(pi*0.5,0,pi*0.25) q[7];
u3(pi*0.5,pi*1.0,pi*0.75) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.4) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*0.5,pi*0.65,pi*1.0) q[7];
u3(pi*0.5,pi*0.15,0) q[8];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[7];
u3(0,0,pi*0.5) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.4) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*1.0,0,pi*0.5) q[7];
u3(pi*1.0,0,pi*1.5) q[8];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[7];
u3(pi*0.5,pi*0.5,pi*1.5) q[8];
rx(pi*0.5) q[7];
cx q[7],q[8];
rx(pi*0.4) q[7];
ry(pi*0.5) q[8];
cx q[8],q[7];
rx(pi*-0.5) q[8];
rz(pi*0.5) q[8];
cx q[7],q[8];
u3(pi*0.5,pi*0.5,pi*0.5) q[7];
u3(pi*0.5,pi*0.5,pi*1.5) q[8];

rx(pi*0.3501408748) q[7];
ry(pi*0.3501408748) q[7];
rz(pi*0.3501408748) q[7];
rx(pi*0.3501408748) q[8];
ry(pi*0.3501408748) q[8];
rz(pi*0.3501408748) q[8];
rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];
rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];

// Gate: ZZ**1.1
rz(pi*1.1) q[9];
rz(pi*1.1) q[10];
u3(pi*0.5,0,pi*0.25) q[9];
u3(pi*0.5,pi*1.0,pi*0.75) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.4) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*0.5,pi*0.65,pi*1.0) q[9];
u3(pi*0.5,pi*0.15,0) q[10];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[9];
u3(0,0,pi*0.5) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.4) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*1.0,0,pi*0.5) q[9];
u3(pi*1.0,0,pi*1.5) q[10];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[9];
u3(pi*0.5,pi*0.5,pi*1.5) q[10];
rx(pi*0.5) q[9];
cx q[9],q[10];
rx(pi*0.4) q[9];
ry(pi*0.5) q[10];
cx q[10],q[9];
rx(pi*-0.5) q[10];
rz(pi*0.5) q[10];
cx q[9],q[10];
u3(pi*0.5,pi*0.5,pi*0.5) q[9];
u3(pi*0.5,pi*0.5,pi*1.5) q[10];

rx(pi*0.3501408748) q[9];
ry(pi*0.3501408748) q[9];
rz(pi*0.3501408748) q[9];
rx(pi*0.3501408748) q[10];
ry(pi*0.3501408748) q[10];
rz(pi*0.3501408748) q[10];
rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];
rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];

// Gate: ZZ**1.1
rz(pi*1.1) q[11];
rz(pi*1.1) q[12];
u3(pi*0.5,0,pi*0.25) q[11];
u3(pi*0.5,pi*1.0,pi*0.75) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.4) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*0.5,pi*0.65,pi*1.0) q[11];
u3(pi*0.5,pi*0.15,0) q[12];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[11];
u3(0,0,pi*0.5) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.4) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*1.0,0,pi*0.5) q[11];
u3(pi*1.0,0,pi*1.5) q[12];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[11];
u3(pi*0.5,pi*0.5,pi*1.5) q[12];
rx(pi*0.5) q[11];
cx q[11],q[12];
rx(pi*0.4) q[11];
ry(pi*0.5) q[12];
cx q[12],q[11];
rx(pi*-0.5) q[12];
rz(pi*0.5) q[12];
cx q[11],q[12];
u3(pi*0.5,pi*0.5,pi*0.5) q[11];
u3(pi*0.5,pi*0.5,pi*1.5) q[12];

rx(pi*0.3501408748) q[11];
ry(pi*0.3501408748) q[11];
rz(pi*0.3501408748) q[11];
rx(pi*0.3501408748) q[12];
ry(pi*0.3501408748) q[12];
rz(pi*0.3501408748) q[12];
rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];
rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];

// Gate: ZZ**1.1
rz(pi*1.1) q[13];
rz(pi*1.1) q[14];
u3(pi*0.5,0,pi*0.25) q[13];
u3(pi*0.5,pi*1.0,pi*0.75) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.4) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*0.5,pi*0.65,pi*1.0) q[13];
u3(pi*0.5,pi*0.15,0) q[14];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[13];
u3(0,0,pi*0.5) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.4) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*1.0,0,pi*0.5) q[13];
u3(pi*1.0,0,pi*1.5) q[14];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[13];
u3(pi*0.5,pi*0.5,pi*1.5) q[14];
rx(pi*0.5) q[13];
cx q[13],q[14];
rx(pi*0.4) q[13];
ry(pi*0.5) q[14];
cx q[14],q[13];
rx(pi*-0.5) q[14];
rz(pi*0.5) q[14];
cx q[13],q[14];
u3(pi*0.5,pi*0.5,pi*0.5) q[13];
u3(pi*0.5,pi*0.5,pi*1.5) q[14];

rx(pi*0.3501408748) q[13];
ry(pi*0.3501408748) q[13];
rz(pi*0.3501408748) q[13];
rx(pi*0.3501408748) q[14];
ry(pi*0.3501408748) q[14];
rz(pi*0.3501408748) q[14];
rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];
rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];

// Gate: ZZ**1.1
rz(pi*1.1) q[15];
rz(pi*1.1) q[0];
u3(pi*0.5,0,pi*0.25) q[15];
u3(pi*0.5,pi*1.0,pi*0.75) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.4) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*0.5,pi*0.65,pi*1.0) q[15];
u3(pi*0.5,pi*0.15,0) q[0];

// Gate: YY**1.1
u3(0,pi*1.0,pi*0.5) q[15];
u3(0,0,pi*0.5) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.4) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*1.0,0,pi*0.5) q[15];
u3(pi*1.0,0,pi*1.5) q[0];

// Gate: XX**1.1
u3(pi*0.5,pi*1.5,pi*1.5) q[15];
u3(pi*0.5,pi*0.5,pi*1.5) q[0];
rx(pi*0.5) q[15];
cx q[15],q[0];
rx(pi*0.4) q[15];
ry(pi*0.5) q[0];
cx q[0],q[15];
rx(pi*-0.5) q[0];
rz(pi*0.5) q[0];
cx q[15],q[0];
u3(pi*0.5,pi*0.5,pi*0.5) q[15];
u3(pi*0.5,pi*0.5,pi*1.5) q[0];

rx(pi*0.3501408748) q[15];
ry(pi*0.3501408748) q[15];
rz(pi*0.3501408748) q[15];
rx(pi*0.3501408748) q[0];
ry(pi*0.3501408748) q[0];
rz(pi*0.3501408748) q[0];

measure q[0] -> ans[0];
measure q[1] -> ans[1];
measure q[2] -> ans[2];
measure q[3] -> ans[3];
measure q[4] -> ans[4];
measure q[5] -> ans[5];
measure q[6] -> ans[6];
measure q[7] -> ans[7];
measure q[8] -> ans[8];
measure q[9] -> ans[9];
measure q[10] -> ans[10];
measure q[11] -> ans[11];
measure q[12] -> ans[12];
measure q[13] -> ans[13];
measure q[14] -> ans[14];
measure q[15] -> ans[15];
